﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ComponentModel.DataAnnotations;

namespace CAOS.Entity
{
    [Table("TRILHA_AUDITORIA")]
    public class TrilhaAuditoria : ICAOSEntity
    {
        [Key]
        [Column("TA_SQ_TRILHA_AUDITORIA")]
        public int TrilhaAuditoriaID { get; set; }

        [Column("USUA_SQ_USUARIO")]
        [Required]
        public int UsuarioID { get; set; }
        public virtual Usuario Usuario { get; set; }

        [Column("SIST_SQ_SISTEMA")]
        [Required]
        public int SistemaID { get; set; }
        public virtual Sistema Sistema { get; set; }

        [Column("PAPE_SQ_PAPEL")]
        public int? PapelID { get; set; }
        public virtual Papel Papel { get; set; }

        [Column("RECU_SQ_RECURSO")]
        public int? RecursoID { get; set; }
        public virtual Recurso Recurso { get; set; }

        [Column("TA_DT_OPERACAO")]
        public DateTime DataOperacao { get; set; }

        [Column("TA_TX_DESCRICAO_OPERACAO")]
        public string DescricaoOperacaoExecutada { get; set; }

        public override string ToString()
        {
            return base.ToString();
            //return string.Format("O usuário {0}, do sistema {1}, {2} com o papel de {3} às {4}");
        }
    }
}
